#ifndef CIRCLE_H
#define CIRCLE_H
/**
 * @file Circle.hpp
 * 
 * This header file contains the prototypes of the functions needed to manipulate a circle 
 * object.
 */
#include "Canvas.hpp"
#include "Shape.hpp"
/**
 * This class specifies the manner in which the Circle object can be implemented.
 */
class Circle : public Shape
{
private:
	POINT center;
	unsigned int radius;

public:
	//Default constructor
	Circle();
	//Constructor with the properties of a shape
	Circle( int x, int y, int size, COLORREF color );
	//Destructor
	virtual ~Circle();
	//Returns true if coordinance of a point is inside the Circle
	virtual bool contains( int x, int y );
	//Draws a circle inside the shape boundaries.
	virtual void draw( Canvas& canvas );
};

#endif